//
// Created by Administrator on 2024/1/4.
//

#include <string>
#include <iostream>
#include <cstring>
#include "StringNote.h"

std::string corda() {
//    c++字符串实际上是使用 null 字符 \0 终止的一维字符数组。因此，一个以 null 结尾的字符串，包含了组成字符串的字符。
//两种写法
//写法1
    char site[9] = {'c', 'h', 'a', 'n', 'g', 'c', 'u', 'n', '\0'};
//写法二
    char sites[] = "changcun";
    std::cout << sites;
//    方法
//1.strcpy(s1,s2)复制字符串,从s2到s1
    char example1[9];
    strcpy(example1, site);
    std::cout << "\n" << example1 << "\n";
//strcat(s1,s2)连接s2到s1的末尾
    strcat(example1, "moren");
    std::cout << example1 << "\n";
//    strlen 返回字符串的长度
    std::cout << strlen(example1) << "\n";
//strcmp(s1, s2);如果 s1 和 s2 是相同的，则返回 0；如果 s1<s2 则返回值小于 0；如果 s1>s2 则返回值大于 0。
    std::cout << strcmp(site, sites) << "\n";
//    strchr(s1, ch);返回一个指针，指向字符串 s1 中字符 ch 的第一次出现的位置。
    char *a= strchr(site, 'c');
    if (a!=NULL){
        std::cout <<*a <<"123"<< "\n";
    }else{
        std::cout <<"null"<< "\n";
    }
//strstr(s1, s2);返回一个指针，指向字符串 s1 中字符串 s2 的第一次出现的位置。
    auto string = strstr(site, sites);
    if (string !=NULL){
        std::cout <<*string <<"123"<< "\n";
    }else{
        std::cout <<"null"<< "\n";
    }
    return " ";
}